package logica.main;

import interfaceGrafica.*;
import java.awt.Component;
import javax.swing.JFrame;

import util.Constantes;

import logica.pessoa.Locador;

public class MainGrafico {
    
    private static JFrame principal;
    private static Component interfaceMenuAtual;
    private static Locador usuarioLogado;

    public static void main(String[] args) {
        principal = new JFrame();
        principal.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
        principal.setVisible(true);
        principal.setResizable(false);
        principal.setLocationRelativeTo(null);
        principal.setLocation(principal.getX()-(principal.getX()/2), principal.getY()-(principal.getY()/2));
        
//        principal.setLocation(principal.getX()-(principal.getWidth()/2), principal.getY()-(principal.getHeight()/2));
        
        InterfaceLogin interfaceLogin = new InterfaceLogin();

        interfaceLogin.setVisible(true);
        principal.add(interfaceLogin);
        principal.setSize(Constantes.INTERFACE_TAMANHO_LOGIN[0], Constantes.INTERFACE_TAMANHO_LOGIN[1]);

        usuarioLogado = null;
        interfaceMenuAtual = null;
    }

    public static void sairDaArea(Component area){
        principal.remove(area);
    }

    public static void entrarNaArea(Component area, int largura, int altura){
    	principal.add(area);
        principal.setSize(largura, altura);
        principal.setLocationRelativeTo(null);
        principal.setLocation(principal.getX()-(principal.getX()/2), principal.getY()-(principal.getY()/2));
    }

    public static Locador getUsuarioLogado(){
        return usuarioLogado;
    }

    public static void setUsuarioLogado(Locador usuario){
        usuarioLogado = usuario;
    }

    public static Component getMenuCorrente() {
        if (interfaceMenuAtual instanceof InterfaceMenuGerente) {
            return new InterfaceMenuGerente();
        } else if (interfaceMenuAtual instanceof InterfaceLocacao) {
            return new InterfaceLocacao();
        }
        return null;
    }

    public static void setMenuCorrente(Component menu){
        interfaceMenuAtual = menu;
    }
}